package com.sc.demo.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import com.sc.demo.router.Router.RouterArithmetic;



/**
 * @author huan
 *
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface TableRouter {
	
	
	/**算法，具体参见枚举类**/
	public abstract RouterArithmetic arithmetic();
	
	/**要分表的表明**/
	public abstract String table();

	/**分表依据的列名**/
	public abstract String column();

	/**表模版，最终的SQL会依照模版匹配成最终的表名**/
	public abstract String pattern();

	/**要分表的数量，其中date,direct,range, round不需要配置此项**/
	public abstract int count() default 0;

}

